package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by xin on 2016/8/2.
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "LSH保险公司使用", schema = "sg_lsh", catalog = "")
@IdClass(Lsh保险公司使用ModelPK.class)
public class Lsh保险公司使用Model {
    private Integer 保险公司编号;
    private String 许可;
    private String 使用状态;
    private String 更新账号;
    private Timestamp 更新时间;

    @Id
    @Column(name = "保险公司编号")
    public Integer get保险公司编号() {
        return 保险公司编号;
    }

    public void set保险公司编号(Integer 保险公司编号) {
        this.保险公司编号 = 保险公司编号;
    }

    @Id
    @Column(name = "许可")
    public String get许可() {
        return 许可;
    }

    public void set许可(String 许可) {
        this.许可 = 许可;
    }

    @Basic
    @Column(name = "使用状态")
    public String get使用状态() {
        return 使用状态;
    }

    public void set使用状态(String 使用状态) {
        this.使用状态 = 使用状态;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @PrePersist
    @PreUpdate
    public void onPreUpdate() {
        this.set更新时间(new Timestamp(System.currentTimeMillis()));
    }

    public Lsh保险公司使用Model() {
    }

    public Lsh保险公司使用Model(Integer 保险公司编号, String 许可, String 使用状态, String 更新账号, Timestamp 更新时间) {
        this.保险公司编号 = 保险公司编号;
        this.许可 = 许可;
        this.使用状态 = 使用状态;
        this.更新账号 = 更新账号;
        this.更新时间 = 更新时间;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Lsh保险公司使用Model that = (Lsh保险公司使用Model) o;

        if (保险公司编号 != null ? !保险公司编号.equals(that.保险公司编号) : that.保险公司编号 != null) return false;
        if (许可 != null ? !许可.equals(that.许可) : that.许可 != null) return false;
        if (使用状态 != null ? !使用状态.equals(that.使用状态) : that.使用状态 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 保险公司编号 != null ? 保险公司编号.hashCode() : 0;
        result = 31 * result + (许可 != null ? 许可.hashCode() : 0);
        result = 31 * result + (使用状态 != null ? 使用状态.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
